A known programmable controller comprises a CPU unit including a CPU operating in accordance with a sequence program, a high function unit having a special function upgraded for assisting the CPU unit, a power source unit for supplying electric power to the CPU unit and the high function unit and a back plane for mounting the above units thereon. The high function unit includes, for example, an input/output unit having an input/output function for inputting and outputting signals between the external appliance and the CPU unit as well as an input time constant function for eliminating noises of an input signal, an interruption unit having an interruption function for starting execution of an interruption program in response to an external input, a counter unit having a counter function for counting external clocks, a comparison and output function for outputting a proper signal by comparing a count value with a target value and a pulse width modulation (PWM) output function for outputting a PWM signal, a pulse output unit having a pulse output function for outputting a pulse signal of a preset frequency and a positioning unit having a positioning function for performing positioning control of the external appliance on the basis of a command of the CPU unit.
Conventionally, in case the above mentioned high function units having the special functions are developed, the high function units are produced individually by performing circuit design for each of the high function units even when the high function units have similar functions partially, thereby resulting in such disadvantages that period and cost for their development and commercialization increase and their production control becomes troublesome due to difficulty in common use of their components.
Meanwhile, the high function unit needs to form communication with other units including the CPU unit and thus, is usually mounted with a CPU or a gate array. In a high function unit employing a CPU in its circuit, function of the high function unit can be changed by rewriting a program even after its production. However, its throughput speed drops and particularly, parallel processing of a plurality of functions is difficult. Furthermore, in a high function unit employing a gate array in its circuit, its throughput speed is high but its functions cannot be changed after its production. The high function unit having the gate array is inexpensive at present but a considerable time is required for providing the gate array in the circuit after its circuit design. In addition, in case a plurality of functions are imparted to the high function unit employing the gate array, all the functions and their specifications should be determined at the stage of production because the functions cannot be changed after its production.